home *** CD-ROM | disk | FTP | other *** search
- ROTM(3F) Last changed: 11-2-98
-
-
- NNAAMMEE
- SSRROOTTMM, DDRROOTTMM - Applies a modified Givens plane rotation
-
- SSYYNNOOPPSSIISS
- Real
- CCAALLLL SSRROOTTMM ((_n,, _x,, _i_n_c_x,, _y,, _i_n_c_y,, _r_p_a_r_a_m))
-
- Double precision
-
- CCAALLLL DDRROOTTMM ((_n,, _x,, _i_n_c_x,, _y,, _i_n_c_y,, _r_p_a_r_a_m))
-
- IIMMPPLLEEMMEENNTTAATTIIOONN
- IRIX systems
-
- DDEESSCCRRIIPPTTIIOONN
- These routines apply the modified Givens plane rotation constructed by
- SSRROOTTMMGG/DDRROOTTMMGG.
-
- These routines have the following arguments:
-
- _n Integer. (input)
- Number of planar points to be rotated. If _n <= 0, these
- routines return without any computation.
-
- _x Array of dimension (_n-1) * |_i_n_c_x| + 1. (input and output)
- SSRROOTTMM: Real array.
- DDRROOTTMM: Double precision array.
- On input, array _x contains the _x-coordinate of each planar
- point to be rotated. On output, array _x contains the
- _x-coordinate of each rotated planar point.
-
- _i_n_c_x Integer. (input)
- Increment between elements of _x. If _i_n_c_x = 0, the results
- will be unpredictable.
-
- _y Array of dimension (_n-1) * |_i_n_c_y| + 1. (input and output)
- SSRROOTTMM: Real array.
- DDRROOTTMM: Double precision array.
- On input, array _y contains the _y-coordinate of each planar
- point to be rotated. On output, array _y contains the
- _y-coordinate of each rotated planar point.
-
- _i_n_c_y Integer. (input)
- Increment between elements of _y. If _i_n_c_x = 0, the results
- will be unpredictable.
-
- _r_p_a_r_a_m Array of dimension 5. (input)
- SSRROOTTMM: Real array.
- DDRROOTTMM: Double precision array.
- Contains rotation matrix information.
-
- These routines compute a planar rotation, with possible scaling or
- reflection, as follows:
-
- _ _ _ _ _ _
- | x(i) | | h(1,1) h(1,2) | | x(i) |
- | y(i) | <-- | h(2,1) h(2,2) | | y(i) |
- - - - - - -
-
- for i=1 , ... , n
-
- where the matrix that contains the elements _h(1,1), _h(2,1), _h(1,2),
- and _h(2,2) is called a rotation matrix.
-
- The _r_p_a_r_a_m array determines the contents of the rotation matrix, as
- follows:
-
- The key parameter, _r_p_a_r_a_m(1), may have one of four values:
-
- 1.0, 0.0, -1.0, or -2.0
-
- If _r_p_a_r_a_m(1) = 1.0:
-
- _ _ _ _
- | _h(1,1) _h(1,2) | = | _r_p_a_r_a_m(2) 1.0 |
- | _h(2,1) _h(2,2) | | -1.0 _r_p_a_r_a_m(5) |
- - - - -
-
- and _r_p_a_r_a_m(3) and _r_p_a_r_a_m(4) are ignored.
-
- If _r_p_a_r_a_m(1) = 0.0:
-
- _ _ _ _
- | _h(1,1) _h(1,2) | = | 1.0 _r_p_a_r_a_m(4) |
- | _h(2,1) _h(2,2) | | _r_p_a_r_a_m(3) 1.0 |
- - - - -
-
-
- and _r_p_a_r_a_m(2) and _r_p_a_r_a_m(5) are ignored.
-
- If _r_p_a_r_a_m(1)=-1.0 (rescaling case):
-
- _ _ _ _
- | _h(1,1) _h(1,2) | = | _r_p_a_r_a_m(2) _r_p_a_r_a_m(4) |
- | _h(2,1) _h(2,2) | | _r_p_a_r_a_m(3) _r_p_a_r_a_m(5) |
- - - - -
-
- This is a full matrix multiplication.
-
- If _r_p_a_r_a_m(1) = -2.0:
-
- _ _ _ _
- | _h(1,1) _h(1,2) | = | 1.0 0.0 | = _I
- | _h(2,1) _h(2,2) | | 0.0 1.0 |
- - - - -
-
- where _I is the _i_d_e_n_t_i_t_y _m_a_t_r_i_x. In this case, _r_p_a_r_a_m(2), _r_p_a_r_a_m(3),
- _r_p_a_r_a_m(4), and _r_p_a_r_a_m(5) are ignored.
-
- If _n <= 0, or if the rotation matrix is the identity matrix (for
- example, when _r_p_a_r_a_m(1) = -2.0), these routines return with no
- operation on input arrays _x and _y.
-
- SSEEEE AALLSSOO
- RROOTTMMGG(3F) for further details about the modified Givens transformation
- and array _r_p_a_r_a_m
-
- This man page is available only online.
-